home *** CD-ROM | disk | FTP | other *** search
- /*
- * FinderDrag.h Drag Manager sample
- *
- *
- * based on SimpleDrag by Greg Robbins
- *
- */
- #include <QuickDraw.h>
- #include <StandardFile.h>
- #include <Fonts.h>
- #include <Menus.h>
- #include <Dialogs.h>
- #include <Events.h>
- #include <TextEdit.h>
- #include <OSEvents.h>
- #include <Desk.h>
- #include <AppleEvents.h>
- #include <GestaltEqu.h>
- #include <ToolUtils.h>
- #include <Processes.h>
- #include <Errors.h>
- #include <Drag.h>
- #include <Packages.h>
-
- #include "Spaces.h"
-
- // function prototypes
-
- pascal OSErr DoAEOpenApplication(AppleEvent *, AppleEvent *, long refCon);
- pascal OSErr DoAEOpenDocuments(AppleEvent *, AppleEvent *, long refCon);
- pascal OSErr DoAEQuitApplication(AppleEvent *, AppleEvent *, long refCon);
- void DoHighLevelEvent(EventRecord *);
- OSErr InstallAppleEventHandlers(void);
- void DrawWindow(WindowPtr);
- OSErr SetWindowSpec(WindowPtr, FSSpecPtr);
- Boolean KeyIsDown(short);
- void ConcatPascalStrings(StringPtr, StringPtr);
- OSErr GetApplicationName(StringPtr);
- WindowPtr DoNewWindow(void);
- void DoCloseWindow(WindowPtr);
- void DoQuit(void);
- void DoAboutWindow(void);
- WindowPtr ReportErrorInWindow(WindowPtr, StringPtr, OSErr);
- WindowPtr ReportStringInWindow(WindowPtr, StringPtr);
- void CreateMenus(void);
- void DoMenuCommand(long);
- void ProcessEvents(void);
-
-
- // global data for my Drag Manager handlers
-
- struct DragHandlerGlobals {
- Boolean acceptableDragFlag;
- // Boolean windowIsHilightedFlag;
- short hilitedSpace;
- };
- typedef struct DragHandlerGlobals DragHandlerGlobals, *DragHandlerGlobalsPtr;
-
-
-
-
- // routines to support dragging
-
- OSErr AddPromiseHFSFlavor(DragReference drag, ItemReference item, FSSpecPtr spec);
- Boolean MouseIsInContentRgn(DragReference, WindowPtr);
- Boolean DragItemsAreAcceptable(DragReference);
- Boolean DragIsNotInSourceWindow(DragReference);
- pascal OSErr MyTrackingHandler(DragTrackingMessage, WindowPtr,
- void *, DragReference);
- pascal OSErr MyReceiveHandler(WindowPtr, void *, DragReference);
- OSErr InstallDragHandlers(WindowPtr theWindow);
- void RemoveDragHandlers(WindowPtr);
- void OutlineRegion(RgnHandle);
- OSErr DoWindowContentDrag(WindowPtr, EventRecord *);
- OSErr CreateAETarget(ProcessSerialNumber *targetPSN, AEDesc *targetDesc);
-